package fr.enseirb.mycub.structures.bike;



/**
 * Model class which will represent Bike stations
 * 
 * @author Eirbmove
 */

public class BikeStationDetailled extends BikeStation {
	private String mAddress;
	private boolean mHasPayment;
	private boolean mIsSpecial;
	

	public static final String ADDRESS = "address";
	public static final String PAYMENT = "payment";
	public static final String SPECIAL = "special";

	public BikeStationDetailled(int id, String name, String address,
			double longitude, double latitude, int availablesBikes,
			int freeLocations, boolean isOpen, boolean isFavorite,
			boolean hasPayment, boolean isSpecial) {
		this(id, name, address, (int) (longitude * 1E6),
				(int) (latitude * 1E6), availablesBikes, freeLocations,
				isOpen, isFavorite, hasPayment, isSpecial);
	}
	
	public BikeStationDetailled(int id, String name, String address,
			int longitude, int latitude, int availablesBikes,
			int freeLocations, boolean isOpen, boolean isFavorite, 
			boolean hasPayment, boolean isSpecial) {
		this(id, name, address, longitude,
				latitude, availablesBikes, freeLocations,
				isOpen, isFavorite, hasPayment, isSpecial, -1);
	}

	public BikeStationDetailled(int id, String name, String address,
			int longitude, int latitude, int availablesBikes,
			int freeLocations, boolean isOpen, boolean isFavorite, 
			boolean hasPayment, boolean isSpecial, int distance) {
		
		super(id, name, longitude, latitude, availablesBikes,
				freeLocations, isOpen, isFavorite, distance);
		mAddress = address;
		mHasPayment = hasPayment;
		mIsSpecial = isSpecial;
	}

	public void setAddress(String address) {
		mAddress = address;
	}

	public String getAddress() {
		return mAddress;
	}

	public boolean hasPayment() {
		return mHasPayment;
	}
	
	public void setPayment(boolean hasPayment) {
		mHasPayment = hasPayment;
	}	
	
	public boolean isSpecial() {
		return mIsSpecial;
	}
	
	public void setSpecial(boolean isSpecial) {
		mIsSpecial = isSpecial;
	}
}